/*
 * Etiqueta.h - Grupo 5 - Prog. Avanzada 2011
 *
 *  Javier Dominguez - 4.901.161-6
 *  Marcelo Parada - 1.977.094-9
 *  Rodrigo Ruiz - 4.481.611-2
 *  Maximiliano Silvera - 4.106.938-6
 */

#ifndef ETIQUETA_H_
#define ETIQUETA_H_

#include <string>
#include "Elemento.h"
#include "../util/collections/ICollectible.h"
#include "../util/genCollections/ColConcrete.h"

using namespace std;

class Etiqueta: public ICollectible
{
private:
	string nombre;

	ColConcrete<Elemento*> *elementos;

public:
	Etiqueta();

	Etiqueta(string nombre);

	// Heredado de icollectible
	virtual bool same(ICollectible *icollectible);

	// Heredado de icollectible
	virtual string toString();

	string getNombre() const;

	void setNombre(string nombre);

	ColConcrete<Elemento*> *getElementos() const;

	void setElementos(ColConcrete<Elemento*> *elementos);

	virtual ~Etiqueta();
};

#endif /* ETIQUETA_H_ */
